package cn.iocoder.ny.module.mall.service;

import cn.iocoder.ny.module.mall.controller.admin.category.dto.MallProductByCategoryDTO;
import cn.iocoder.ny.module.mall.controller.admin.category.vo.MallProductByCategoryPageVo;
import cn.iocoder.ny.module.mall.controller.admin.category.vo.MallProductCategoryPageVo;
import cn.iocoder.ny.module.mall.controller.admin.category.vo.MallProductQueryCategoryVo;
import cn.iocoder.ny.module.mall.controller.admin.config.vo.MallConfigPageVo;
import cn.iocoder.ny.module.mall.domain.MallConfig;
import cn.iocoder.ny.module.mall.domain.MallProductCategory;
import cn.iocoder.ny.module.mall.domain.dto.MallProductMenuDTO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface IMallProductCateGoryService extends IService<MallProductCategory> {



    PageResult<MallProductCategory> queryList(MallProductCategoryPageVo mallProductCategoryPageVo);

    MallProductCategory queryById(Long id);


    boolean updateBatch(List<MallProductCategory> list);

    List<MallProductMenuDTO> menuSearch(MallProductMenuDTO mallProductMenuDTO);

    List<MallProductCategory> queryFirstMenu(MallProductCategory mallProductCategory);

    MallProductQueryCategoryVo queryCategoryParent(Long parentId);

    boolean saveProductCategory(MallProductCategory mallProductCategory);

    boolean updateProductCategoryById(MallProductCategory mallProductCategory);

    PageResult<MallProductByCategoryDTO> queryProductListByCategoryId(MallProductByCategoryPageVo mallProductByCategoryPageVo);

//    PageResult<MallConfig> getConfigPage(MallConfigPageVo mallConfigPageVo);

}
